@echo off
echo ===== 简易画图板应用打包工具 =====
echo.

:: 检查Python是否已安装
python --version >nul 2>&1
if %errorlevel% neq 0 (
    echo 错误: 未检测到Python安装，请先安装Python。
    pause
    exit /b 1
)

:: 检查依赖项
echo 正在检查依赖项...

:: 检查Pillow
python -c "import PIL" >nul 2>&1
if %errorlevel% neq 0 (
    echo 安装Pillow...
    pip install pillow
    if %errorlevel% neq 0 (
        echo 错误: 安装Pillow失败。
        pause
        exit /b 1
    )
)

:: 检查PyInstaller
python -c "import PyInstaller" >nul 2>&1
if %errorlevel% neq 0 (
    echo 安装PyInstaller...
    pip install pyinstaller
    if %errorlevel% neq 0 (
        echo 错误: 安装PyInstaller失败。
        pause
        exit /b 1
    )
)

:: 确保资源目录存在
if not exist resources mkdir resources

:: 检查图标
if not exist resources\icon.ico (
    if exist resources\icon.svg (
        echo 警告: 未找到icon.ico文件，但找到了icon.svg文件。
        echo 请先运行convert_icon.py转换图标，或者手动提供icon.ico文件。
    ) else (
        echo 警告: 未找到图标文件，将使用默认图标。
    )
)

:: 询问打包类型
echo.
echo 请选择打包类型:
echo 1. 单文件模式 (--onefile, 生成单个exe文件，启动较慢)
echo 2. 文件夹模式 (生成带文件夹的应用，启动更快)
echo.

set /p choice=请选择 [1/2] (默认: 1): 
if "%choice%"=="" set choice=1

:: 构建PyInstaller命令
set cmd=pyinstaller --windowed

if "%choice%"=="1" (
    set cmd=%cmd% --onefile
)

:: 添加图标（如果存在）
if exist resources\icon.ico (
    set cmd=%cmd% --icon=resources\icon.ico
)

:: 添加主程序文件和名称
set cmd=%cmd% --name "简易画图板" main.py

:: 执行打包命令
echo.
echo 开始打包...
echo 执行命令: %cmd%
%cmd%

if %errorlevel% neq 0 (
    echo 错误: 打包失败。
    pause
    exit /b 1
)

echo.
echo 打包完成!

:: 显示输出位置
if "%choice%"=="1" (
    if exist dist\简易画图板.exe (
        echo 可执行文件已生成: %cd%\dist\简易画图板.exe
    )
) else (
    if exist dist\简易画图板 (
        echo 应用文件夹已生成: %cd%\dist\简易画图板
        echo 可执行文件: %cd%\dist\简易画图板\简易画图板.exe
    )
)

echo.
echo 感谢使用打包工具!
pause